<?php

function redirect($uri = '', $method = 'location')
{
	switch($method)
	{
		case 'refresh'	: header("Refresh:0;url=".site_url($uri));
			break;
		default		: header("Location: ".site_url($uri));
			break;
	}
	exit;
}


function url_user($id, $name)
{

	// TODO: Добавить переключатель на пользователей в субдоменах
	return '<a href="/user/'.$id.'.html">'.$name.'</a>';

}


function anchor($uri = '', $title = '', $attributes = '')
{

	$title = (string) $title;

	if ( ! is_array($uri))
	{
		$site_url = ( ! preg_match('!^\w+://!i', $uri)) 
			? site_url($uri) 
			: $uri;		
	}
	else
	{
		$site_url = site_url($uri);
	}

	if ($title == '')
	{
		$title = $site_url;
	}

	// TODO: Добавить проверку атрибутов

	return '<a href="'.$site_url.'"'.$attributes.'>'.$title.'</a>';
}


function get_uri()
{

	$path = (isset($_SERVER['PATH_INFO'])) 
		? $_SERVER['PATH_INFO'] 
		: @getenv('PATH_INFO');	
		
	if ($path != '' AND $path != '/' AND $path != '/'.SELF)
	{
		return $path;
	}
}

function filter_uri($str)
{
	
	if ($str != '')
	{
		if ( ! preg_match("|^[a-z0-9~%.:_-]+$|i", $str))
		{
			exit('Адрес который вы ввели содержить запрещенные символы.');
		}
	}
		
	return $str;
}

function site_url($uri)
{
	global $SITE;
	
	if (is_array($uri))
	{
		$uri = implode('/', $uri);
	}
	
	// Если адрес на задан
	if ($uri == '')
	{
		// то возвращаем ссылку на стандартный контроллер
		return $SITE['site_url'];
	}
	else
	{
		// возвращаем прямую ссылку			
		return $SITE['site_url'].preg_replace("|^/*(.+?)/*$|", "\\1", $uri);
	}
}




?>
